{
 "cells": [
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-03-31T13:56:27.210746Z",
     "start_time": "2025-03-31T13:56:23.864291Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 导入必要的库\n",
    "# 导入必要的库\n",
    "from sklearn.datasets import fetch_openml\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.preprocessing import StandardScaler\n",
    "from sklearn.linear_model import Perceptron\n",
    "from sklearn.metrics import accuracy_score, classification_report, confusion_matrix\n",
    "\n",
    "# 加载 MNIST 数据集\n",
    "mnist = fetch_openml('mnist_784', version=1, cache=True)\n",
    "X, y = mnist.data, mnist.target"
   ],
   "id": "15029575ee0ae26e",
   "outputs": [],
   "execution_count": 2
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-03-31T13:56:28.672656Z",
     "start_time": "2025-03-31T13:56:27.823652Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 数据标准化\n",
    "scaler = StandardScaler()\n",
    "X_scaled = scaler.fit_transform(X)"
   ],
   "id": "b7dced2b63d97e54",
   "outputs": [],
   "execution_count": 3
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-03-31T13:56:29.849762Z",
     "start_time": "2025-03-31T13:56:28.700119Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 划分训练集和测试集\n",
    "X_train, X_test, y_train, y_test = train_test_split(X_scaled, y, test_size=0.2, random_state=42)\n"
   ],
   "id": "eebc7744f95b30b0",
   "outputs": [],
   "execution_count": 4
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-03-31T13:56:37.574728Z",
     "start_time": "2025-03-31T13:56:29.891360Z"
    }
   },
   "cell_type": "code",
   "source": [
    "from sklearn.linear_model import LogisticRegression\n",
    "from sklearn.metrics import accuracy_score, precision_recall_fscore_support, confusion_matrix, classification_report\n",
    "import seaborn as sns\n",
    "import matplotlib.pyplot as plt\n",
    "import pandas as pd\n",
    "# Logistic回归模型训练\n",
    "model = LogisticRegression(max_iter=1000)\n",
    "model.fit(X_train, y_train)"
   ],
   "id": "b418fa7618f5db28",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "LogisticRegression(max_iter=1000)"
      ],
      "text/html": [
       "<style>#sk-container-id-1 {\n",
       "  /* Definition of color scheme common for light and dark mode */\n",
       "  --sklearn-color-text: black;\n",
       "  --sklearn-color-line: gray;\n",
       "  /* Definition of color scheme for unfitted estimators */\n",
       "  --sklearn-color-unfitted-level-0: #fff5e6;\n",
       "  --sklearn-color-unfitted-level-1: #f6e4d2;\n",
       "  --sklearn-color-unfitted-level-2: #ffe0b3;\n",
       "  --sklearn-color-unfitted-level-3: chocolate;\n",
       "  /* Definition of color scheme for fitted estimators */\n",
       "  --sklearn-color-fitted-level-0: #f0f8ff;\n",
       "  --sklearn-color-fitted-level-1: #d4ebff;\n",
       "  --sklearn-color-fitted-level-2: #b3dbfd;\n",
       "  --sklearn-color-fitted-level-3: cornflowerblue;\n",
       "\n",
       "  /* Specific color for light theme */\n",
       "  --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
       "  --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n",
       "  --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
       "  --sklearn-color-icon: #696969;\n",
       "\n",
       "  @media (prefers-color-scheme: dark) {\n",
       "    /* Redefinition of color scheme for dark theme */\n",
       "    --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
       "    --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n",
       "    --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
       "    --sklearn-color-icon: #878787;\n",
       "  }\n",
       "}\n",
       "\n",
       "#sk-container-id-1 {\n",
       "  color: var(--sklearn-color-text);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 pre {\n",
       "  padding: 0;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 input.sk-hidden--visually {\n",
       "  border: 0;\n",
       "  clip: rect(1px 1px 1px 1px);\n",
       "  clip: rect(1px, 1px, 1px, 1px);\n",
       "  height: 1px;\n",
       "  margin: -1px;\n",
       "  overflow: hidden;\n",
       "  padding: 0;\n",
       "  position: absolute;\n",
       "  width: 1px;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-dashed-wrapped {\n",
       "  border: 1px dashed var(--sklearn-color-line);\n",
       "  margin: 0 0.4em 0.5em 0.4em;\n",
       "  box-sizing: border-box;\n",
       "  padding-bottom: 0.4em;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-container {\n",
       "  /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n",
       "     but bootstrap.min.css set `[hidden] { display: none !important; }`\n",
       "     so we also need the `!important` here to be able to override the\n",
       "     default hidden behavior on the sphinx rendered scikit-learn.org.\n",
       "     See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n",
       "  display: inline-block !important;\n",
       "  position: relative;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-text-repr-fallback {\n",
       "  display: none;\n",
       "}\n",
       "\n",
       "div.sk-parallel-item,\n",
       "div.sk-serial,\n",
       "div.sk-item {\n",
       "  /* draw centered vertical line to link estimators */\n",
       "  background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
       "  background-size: 2px 100%;\n",
       "  background-repeat: no-repeat;\n",
       "  background-position: center center;\n",
       "}\n",
       "\n",
       "/* Parallel-specific style estimator block */\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item::after {\n",
       "  content: \"\";\n",
       "  width: 100%;\n",
       "  border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
       "  flex-grow: 1;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel {\n",
       "  display: flex;\n",
       "  align-items: stretch;\n",
       "  justify-content: center;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  position: relative;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item {\n",
       "  display: flex;\n",
       "  flex-direction: column;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item:first-child::after {\n",
       "  align-self: flex-end;\n",
       "  width: 50%;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item:last-child::after {\n",
       "  align-self: flex-start;\n",
       "  width: 50%;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item:only-child::after {\n",
       "  width: 0;\n",
       "}\n",
       "\n",
       "/* Serial-specific style estimator block */\n",
       "\n",
       "#sk-container-id-1 div.sk-serial {\n",
       "  display: flex;\n",
       "  flex-direction: column;\n",
       "  align-items: center;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  padding-right: 1em;\n",
       "  padding-left: 1em;\n",
       "}\n",
       "\n",
       "\n",
       "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
       "clickable and can be expanded/collapsed.\n",
       "- Pipeline and ColumnTransformer use this feature and define the default style\n",
       "- Estimators will overwrite some part of the style using the `sk-estimator` class\n",
       "*/\n",
       "\n",
       "/* Pipeline and ColumnTransformer style (default) */\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable {\n",
       "  /* Default theme specific background. It is overwritten whether we have a\n",
       "  specific estimator or a Pipeline/ColumnTransformer */\n",
       "  background-color: var(--sklearn-color-background);\n",
       "}\n",
       "\n",
       "/* Toggleable label */\n",
       "#sk-container-id-1 label.sk-toggleable__label {\n",
       "  cursor: pointer;\n",
       "  display: block;\n",
       "  width: 100%;\n",
       "  margin-bottom: 0;\n",
       "  padding: 0.5em;\n",
       "  box-sizing: border-box;\n",
       "  text-align: center;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 label.sk-toggleable__label-arrow:before {\n",
       "  /* Arrow on the left of the label */\n",
       "  content: \"▸\";\n",
       "  float: left;\n",
       "  margin-right: 0.25em;\n",
       "  color: var(--sklearn-color-icon);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 label.sk-toggleable__label-arrow:hover:before {\n",
       "  color: var(--sklearn-color-text);\n",
       "}\n",
       "\n",
       "/* Toggleable content - dropdown */\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content {\n",
       "  max-height: 0;\n",
       "  max-width: 0;\n",
       "  overflow: hidden;\n",
       "  text-align: left;\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content.fitted {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content pre {\n",
       "  margin: 0.2em;\n",
       "  border-radius: 0.25em;\n",
       "  color: var(--sklearn-color-text);\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content.fitted pre {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
       "  /* Expand drop-down */\n",
       "  max-height: 200px;\n",
       "  max-width: 100%;\n",
       "  overflow: auto;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
       "  content: \"▾\";\n",
       "}\n",
       "\n",
       "/* Pipeline/ColumnTransformer-specific style */\n",
       "\n",
       "#sk-container-id-1 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  color: var(--sklearn-color-text);\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "/* Estimator-specific style */\n",
       "\n",
       "/* Colorize estimator box */\n",
       "#sk-container-id-1 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-label label.sk-toggleable__label,\n",
       "#sk-container-id-1 div.sk-label label {\n",
       "  /* The background is the default theme color */\n",
       "  color: var(--sklearn-color-text-on-default-background);\n",
       "}\n",
       "\n",
       "/* On hover, darken the color of the background */\n",
       "#sk-container-id-1 div.sk-label:hover label.sk-toggleable__label {\n",
       "  color: var(--sklearn-color-text);\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "/* Label box, darken color on hover, fitted */\n",
       "#sk-container-id-1 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n",
       "  color: var(--sklearn-color-text);\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "/* Estimator label */\n",
       "\n",
       "#sk-container-id-1 div.sk-label label {\n",
       "  font-family: monospace;\n",
       "  font-weight: bold;\n",
       "  display: inline-block;\n",
       "  line-height: 1.2em;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-label-container {\n",
       "  text-align: center;\n",
       "}\n",
       "\n",
       "/* Estimator-specific */\n",
       "#sk-container-id-1 div.sk-estimator {\n",
       "  font-family: monospace;\n",
       "  border: 1px dotted var(--sklearn-color-border-box);\n",
       "  border-radius: 0.25em;\n",
       "  box-sizing: border-box;\n",
       "  margin-bottom: 0.5em;\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-estimator.fitted {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-0);\n",
       "}\n",
       "\n",
       "/* on hover */\n",
       "#sk-container-id-1 div.sk-estimator:hover {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-estimator.fitted:hover {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n",
       "\n",
       "/* Common style for \"i\" and \"?\" */\n",
       "\n",
       ".sk-estimator-doc-link,\n",
       "a:link.sk-estimator-doc-link,\n",
       "a:visited.sk-estimator-doc-link {\n",
       "  float: right;\n",
       "  font-size: smaller;\n",
       "  line-height: 1em;\n",
       "  font-family: monospace;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  border-radius: 1em;\n",
       "  height: 1em;\n",
       "  width: 1em;\n",
       "  text-decoration: none !important;\n",
       "  margin-left: 1ex;\n",
       "  /* unfitted */\n",
       "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
       "  color: var(--sklearn-color-unfitted-level-1);\n",
       "}\n",
       "\n",
       ".sk-estimator-doc-link.fitted,\n",
       "a:link.sk-estimator-doc-link.fitted,\n",
       "a:visited.sk-estimator-doc-link.fitted {\n",
       "  /* fitted */\n",
       "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
       "  color: var(--sklearn-color-fitted-level-1);\n",
       "}\n",
       "\n",
       "/* On hover */\n",
       "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n",
       ".sk-estimator-doc-link:hover,\n",
       "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n",
       ".sk-estimator-doc-link:hover {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-3);\n",
       "  color: var(--sklearn-color-background);\n",
       "  text-decoration: none;\n",
       "}\n",
       "\n",
       "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n",
       ".sk-estimator-doc-link.fitted:hover,\n",
       "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n",
       ".sk-estimator-doc-link.fitted:hover {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-3);\n",
       "  color: var(--sklearn-color-background);\n",
       "  text-decoration: none;\n",
       "}\n",
       "\n",
       "/* Span, style for the box shown on hovering the info icon */\n",
       ".sk-estimator-doc-link span {\n",
       "  display: none;\n",
       "  z-index: 9999;\n",
       "  position: relative;\n",
       "  font-weight: normal;\n",
       "  right: .2ex;\n",
       "  padding: .5ex;\n",
       "  margin: .5ex;\n",
       "  width: min-content;\n",
       "  min-width: 20ex;\n",
       "  max-width: 50ex;\n",
       "  color: var(--sklearn-color-text);\n",
       "  box-shadow: 2pt 2pt 4pt #999;\n",
       "  /* unfitted */\n",
       "  background: var(--sklearn-color-unfitted-level-0);\n",
       "  border: .5pt solid var(--sklearn-color-unfitted-level-3);\n",
       "}\n",
       "\n",
       ".sk-estimator-doc-link.fitted span {\n",
       "  /* fitted */\n",
       "  background: var(--sklearn-color-fitted-level-0);\n",
       "  border: var(--sklearn-color-fitted-level-3);\n",
       "}\n",
       "\n",
       ".sk-estimator-doc-link:hover span {\n",
       "  display: block;\n",
       "}\n",
       "\n",
       "/* \"?\"-specific style due to the `<a>` HTML tag */\n",
       "\n",
       "#sk-container-id-1 a.estimator_doc_link {\n",
       "  float: right;\n",
       "  font-size: 1rem;\n",
       "  line-height: 1em;\n",
       "  font-family: monospace;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  border-radius: 1rem;\n",
       "  height: 1rem;\n",
       "  width: 1rem;\n",
       "  text-decoration: none;\n",
       "  /* unfitted */\n",
       "  color: var(--sklearn-color-unfitted-level-1);\n",
       "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 a.estimator_doc_link.fitted {\n",
       "  /* fitted */\n",
       "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
       "  color: var(--sklearn-color-fitted-level-1);\n",
       "}\n",
       "\n",
       "/* On hover */\n",
       "#sk-container-id-1 a.estimator_doc_link:hover {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-3);\n",
       "  color: var(--sklearn-color-background);\n",
       "  text-decoration: none;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 a.estimator_doc_link.fitted:hover {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-3);\n",
       "}\n",
       "</style><div id=\"sk-container-id-1\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>LogisticRegression(max_iter=1000)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-1\" type=\"checkbox\" checked><label for=\"sk-estimator-id-1\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\">&nbsp;&nbsp;LogisticRegression<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.4/modules/generated/sklearn.linear_model.LogisticRegression.html\">?<span>Documentation for LogisticRegression</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></label><div class=\"sk-toggleable__content fitted\"><pre>LogisticRegression(max_iter=1000)</pre></div> </div></div></div></div>"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 5
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-03-31T13:56:37.695118Z",
     "start_time": "2025-03-31T13:56:37.663713Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 模型预测\n",
    "y_pred = model.predict(X_test)"
   ],
   "id": "689e153a86be0546",
   "outputs": [],
   "execution_count": 6
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-03-31T13:56:38.091231Z",
     "start_time": "2025-03-31T13:56:37.705389Z"
    }
   },
   "cell_type": "code",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Accuracy: 0.9155714285714286\n",
      "Precision: 0.9153366795387418\n",
      "Recall: 0.9155714285714286\n",
      "F1-score: 0.9153681609966969\n",
      "Confusion Matrix:\n",
      " [[1283    1   10    0    1   14   22    4    6    2]\n",
      " [   0 1553    6    9    3    5    1    4   16    3]\n",
      " [   5   19 1234   19   13   13   21   16   28   12]\n",
      " [   7    9   37 1272    1   40    7   21   21   18]\n",
      " [   6    2   11    4 1190    5   12    9    9   47]\n",
      " [  11   11    9   42   12 1116   20    1   35   16]\n",
      " [   6    4   18    1   16   21 1321    3    6    0]\n",
      " [   4    4   24    5   13    6    0 1412    2   33]\n",
      " [  11   32   17   44    6   46   13    9 1160   19]\n",
      " [   7    9    7   15   38    5    0   50   12 1277]]\n",
      "Classification Report:\n",
      "               precision    recall  f1-score   support\n",
      "\n",
      "           0       0.96      0.96      0.96      1343\n",
      "           1       0.94      0.97      0.96      1600\n",
      "           2       0.90      0.89      0.90      1380\n",
      "           3       0.90      0.89      0.89      1433\n",
      "           4       0.92      0.92      0.92      1295\n",
      "           5       0.88      0.88      0.88      1273\n",
      "           6       0.93      0.95      0.94      1396\n",
      "           7       0.92      0.94      0.93      1503\n",
      "           8       0.90      0.85      0.87      1357\n",
      "           9       0.89      0.90      0.90      1420\n",
      "\n",
      "    accuracy                           0.92     14000\n",
      "   macro avg       0.91      0.91      0.91     14000\n",
      "weighted avg       0.92      0.92      0.92     14000\n",
      "\n"
     ]
    }
   ],
   "execution_count": 7,
   "source": [
    "# 模型评估\n",
    "accuracy = accuracy_score(y_test, y_pred)\n",
    "precision, recall, f1, _ = precision_recall_fscore_support(y_test, y_pred, average='weighted')\n",
    "conf_matrix = confusion_matrix(y_test, y_pred)\n",
    "class_report = classification_report(y_test, y_pred)\n",
    "print(\"Accuracy:\", accuracy)\n",
    "print(\"Precision:\", precision)\n",
    "print(\"Recall:\", recall)\n",
    "print(\"F1-score:\", f1)\n",
    "print(\"Confusion Matrix:\\n\", conf_matrix)\n",
    "print(\"Classification Report:\\n\", class_report)"
   ],
   "id": "543792b48de69281"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-03-31T13:56:38.792708Z",
     "start_time": "2025-03-31T13:56:38.151456Z"
    }
   },
   "cell_type": "code",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 1000x700 with 2 Axes>"
      ],
      "image/png": "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FxnuXhlSQwNM71Yb07vVVrVH33kB78Vnseq3OzA1NsAGv4awMpPi94ep6LrgNP5OSBcvtBbo6vH+mKrVqmPuwp+wdPFP+HFyMEqULImx44PQSgeuWvMhurzfe3bvwtMnj3H06GFEHj2itu5cTLxIqcRVvkIFrFq3EQvnz8WaVSthamqKrt16oId3b7GjfbG9/z/ekUcP49h/jvfZmHjIMjMxd1YIXiQkwLZESUwInoImTZuJlFY7VocvR05ODmbPDMHsmSGq9jqOjli6fJWIycSVX0bDfE0kSi2e/r9x4wYGDBiAb7/9FitXrlS1379/H99//z2ePn2KP/74Q/D9ynTj+3AEU3xkYrCuqjh0l9gRRHE31EvsCOLg+7p+0c+3Nb19neeTAQh5zkBPP7CafcUjxSqOPqS1x7o7P/+fkAG0XImoUqUKjh07hsePH6u1lylTBnv27MGuXfr54ZCIiIiIxKOn/bovovUvmzMxMUH58uXfaS9QoAB8fHy0HYeIiIiIiATibBoiIiIi0mucEyGc1isRRERERESUv7ESQURERER6jYUI4ViJICIiIiIiQViJICIiIiK9xjkRwrESQUREREREgrASQURERER6jYUI4ViJICIiIiIiQViJICIiIiK9ZmDAUoRQrEQQEREREZEgrEQQERERkV7jnAjhWIkgIiIiIiJBWIkgIiIiIr3G74kQjpUIIiIiIiIShJ0IIiIiIiIShMOZiIiIiEivcTSTcKxEEBERERGRIKxEEBEREZFe48Rq4ViJICIiIiIiQViJICIiIiK9xkqEcDrRiVAqxU4gDn19wd9a0knsCKIoM3Cb2BFE8XBVd7EjiCJbrhA7giiMDPSzQK7U0z9k+vlXDFBCP4+3/h5x3aQTnQgiIiIios+lp+dlv4h+nvIhIiIiIqLPxkoEEREREek1fR0i/iVYiSAiIiIiIkFYiSAiIiIivcZChHCsRBARERERkSCsRBARERGRXuOcCOFYiSAiIiIiIkFYiSAiIiIivcZChHCsRBARERERkSCsRBARERGRXuOcCOFYiSAiIiIiIkFYiSAiIiIivcZChHCsRBARERERkSDsRBARERERkSAczkREREREeo0Tq4VjJYKIiIiIiARhJYKIiIiI9BoLEcKxEkFERERERIKwEkFEREREeo1zIoRjJYKIiIiIiARhJeIzHNi/F9OnTlZry87OhkQCxF68JlIq7fjz3l3MmTUDV69ehqWFJTp37YZ+AwbBwEC3+qOx0VEI/Wkh/vrzLkxNzdCiVWsMHzkGC+bOwqH9+9S2ff1aBqf6DRC6fJVIaYUrYmWCQ8EtMXJtLM7eeA4AaFe3NEa3r4ZyRS2RnJ6Fn0/fw7y916FUAmdC2qJ0EXO1+7A0lWLa9sv46cAfsLYwxo89HNC8hi1MjAxx5e9kTNp6Edfup4iwd3knKSkJfXp2w+Qfp6Oek7PYcTRGLpfDd0BflCxZClOmzwQAXLtyGXNnzcC9u3dgbW2NHwYORkevLiInzXv69H5+8+YNLJw3B3/8fh1SqRT1GzbC6LHjYW1trdrm8qWLGNjve0RfuCJi0rylr/v9VlJSEny8u2PS1Gmo+//3scMHD2Bl2FI8f/4MRWxs0KtPX3Tt1l3kpOJiIUI43frkpyUe7drjfOxF1bJ7/2FYWxfClB9DxI6mURkZ6RgyqD9sS5RA5K+nsGbDZhw9fBArly8TO1qeSk5Kgv/QwejSrTuOn43B5l924kJsDNavDkfgxCk4HX1BtcxduBhWVlYYOWac2LE/mZOdDQ4Ft0SF4laqtlplrbFsQH3M3HkVFYbsRLf5J9HdpTx8W1cGALgEHUK5wTtVy/Kjt3Dl72SsOnYbAPBTPycUsTSGS+AhfDt8N2JuJ2Db6KYwNzYUZR/zwsX4C+jTsxsePLgvdhSNC1++FJfiL6h+fvkyFSP8BsGjfXscPxuNiVOnY+HcWbh2Vfc+YOnL+7lMJsNQ3wGoVbs2jp04jR279yE1JQVTJk4AACiVSuyO2Ikhg/ohKytL5LR5R1/3+61L8fHw8e6u9j525/YtTJ0cjCnTZ+BM9AVMnT4Tc2eFIP5CnIhJKT9iJ+ILKZVKBE8YC5cmrvDw7CB2HI26GH8BSUmJCAyeBDNzc5QsWQr9B/pi+7afoVQqxY6XZ6wLF8bRE2fh2aETJBIJUlJSkJX1GoUKF1bbLiU5GcETxmLM+CBUtKskUlphujUqhxWDG2DGTvUPg98UtcD643dw9PJjKJXA7ScvcfDCQzSwL/rOfbhUKYbBrezRf9lZpL/OAQAolcDMXVeRnJ6FbLkCoYduoHhBM1S0tXrn9vnB3t0RmBAwBkNHjBQ7isbFRkfht2NH0bxlK1Xbb5FHUbBQIXzX3RtGRkao51wfbdzbYfvWLSIm1Txdfj9/+uQx7O2rYOBgP0ilxihUyBqdu3ZTfXCcMjEQu3b8gsFDhomcNG/p634DwN49EZgwbgz8hvurtf/911+Q5+RAoVBAqVRCIpHA0NAQJsYm4gT9SkgkEq0tukL04UyvXr2CmZkZjIxEj/JZDuzbg7t37mDREt06G58buVwBqVQKIyOpqk1iIEFi4gu8evkSBQoWFDFd3rKwsAAAeLg1w/Pnz+BQxxHtO3RS22bxonmoWrU62np4ihHxsxy/9hQ7zv8NuUKJVUP+ad8f9xD74x6qfjaVGsKtVknsOP+32u0NJBLM+74u5u+9jnvP0lTt3y85o7Zd+3rfIE2WjTtPX2lmRzSsYSMXuLfzhJGREcaN0d2ORFJiIqZNDsa8n0KxZeN6Vfvdu3dQ0c5ebdvyFe2wN2KntiNqlS6/n5crXwFLl4ertR2LPIJvq1YDAAwZOgLFbW0RFxstRjyN0df9Bv7/Pubx5n1s/NhRau01atVC3949YWhoCLlcjpFjAlCtRg0R01J+pNVKxOvXrxEaGootW7ZAJpNhwIABcHJyQp06dTBt2jRkZ2drM84XUygUWLkiDP0HDoaFhaXYcTSutkMdmJiYYvGi+cjMzMTjx4+wfu1qAIDstUzkdJqxa/9hHDp2EgaGhhg32l/V/ujhQxzctw9++exM9fNUGeSKD1eNLE2NsGG4CzKz5Vh+9Kbaus4NysLC1Ajhkbffe/s2tUtiZi9HBGy4gMwseZ7k1jabokXz7YmNT6VQKDAxMAA9+/jAvnIVtXUZ6ekwMzNTazM1NUVGRoY2I2qVPr2fK5VKLF28CKdOHMfYcYEAgOK2tiKn0jx9228bm9zfx7Kys1CqVGmEha/B+bhLWLx0OZYvDcX5s2dyuRf9IZFob9EVWu1EzJ07F0eOHMH69esxYMAAvH79Gtu2bcOaNWtw9epVhIWFaTPOF4uNicaLhOfopIOTDXNToEABLF0ejqtXLqNNS1cEjPaHZ/uOAAArqwLihtMQU1NTFC1WDMP8R+Pc2dN4+TIVALB3907UcnBA5Srfipwwb9nZWuFQcEsYGRqg46zfkCbLUVvfp2lFbDhxF7Ls3DsHozyrYvngBhixOhq/nPtLC4npc61dtRLGxibo3rPXO+vMzMwhk6mfGJDJZDD/f4VOF+nL+3laWhrGjBqOAwf2YvW6jahkX1nsSFqhr/udm7ClS2BsbIL6DRpCKpWicVNXtHH3wI7t28SORh+QlJQENzc3REf/UzW7fPkyunbtCgcHBzRv3hzbt29Xu01ERATc3NxQu3ZteHl54eLFi6p1crkcs2fPRsOGDeHg4ABfX188f/5cUCatdiIOHz6MtWvXYsmSJYiLi8P8+fNRs2ZN1K1bFwsXLsSePXu0GeeLHYs8guYt3GBmbv7xjXVAdnYWcnJyEL5mA06ejcamn7fDwMAAFSravXPWMj+7fOkiOrd3R3b2P5PssrOyIJVKVfv527FIuLdrL1ZEjWhZswSOTnLDb1efouu8E0jNUK8MFi1gAudKNrl2DsyMDbFpRGP0bFwBnjN+xe6YB1pKTZ/r4P69iI+LgWsjJ7g2csLhgwdw+OABuDZyQkU7O9y7e0dt+z/v3kFFOzuR0mqePryfP3hwH716dEF6Wjo2b92pNx+k9XW/3+fpkydqf98AwMjICFKp9D230A9f85yICxcuoFu3brh//58J8qmpqRg4cCA6duyI2NhYhISEYObMmbhy5c2cx+joaEybNg2zZs1CbGws2rdvD19fX2RmZgIAwsLCcPbsWezcuROnT5+GqakpgoODBeXSaiciMzMTNjY2sLe3R7FixVDwX2PoixUrhlev8tf46UvxF1DHsZ7YMbRGqQR8B/XD7l07oFQq8fv1a1gVvhzevb8XO1qeqmRvD5lMhiWLFiA7OwtPHj/Covlz0aFTZ0ilxkhJScaf9+6ijmNdsaPmGceKRbB+mAuCf76Iydsu5TrkyalSUTxNycTfCenvrAv3bYiShc3RcupRXM3nl3XVFzv3HsTJ83E4cTYGJ87GoI27B9q4e+DE2Rg0a+mGxBcvsGXjeuRkZyMuJhqHD+5Hh46dxY6tMbr+fv4yNRUD+/mgVi0HLFuxSu3yprpMX/f7Q5q6NsfRw4dw7uxpKJVKxMXG4OD+vXDPR/P79ElERATGjBmDkSPVh08fPXoUhQoVgrf3mwtgNGjQAJ6enti8eTMAYPv27fDw8ICjoyOkUil8fHxgbW2NgwcPqtYPGDAAJUqUgKWlJYKCgnDq1Ck8ePDpJwG1Oui3YsWK2L17Nzp27IiTJ0+q2nNycrBgwQLUyGeTeh4+fIhixYuJHUNrjI2NsWjxMsybMxNzZ89A4cJF0PeHAejc5Tuxo+Upc3MLLAlbiflzZqKVa2NYWlmirYcn+g96MxP58aNHAICixYqLGTNPjWxXFVJDA8zwroMZ3nVU7VG3EtB9wSkAQLmiFniSnPnObWuWtUYbh1KQZctxab76H6HuC04h6laCZsNTnitUyBpLV67GvNkzsGLZEhSyLowx44NU15jXRbr+fr5n9y48ffIYR48eRuTRI2rrzsXEi5RK8/R1vz+kU+cukMkyMWdmCF4kJMC2REkETpyCJq7NxI4mKm1eNSkrK+udSwobGxvD2Nj4nW1dXFzg6flmgvy/OxK3b9+Gvb36BTDs7OywY8cOAMCdO3fQuXPnd9bfuHEDr169wtOnT9Vub2Njg4IFC+LmzZv45ptvPmk/JEotXpvz/PnzGDx4MM6fPw/zf5WM27Zti9evXyM8PBwVK1YUfL+Z+Ws+Nn2hHIVC7AiiKD/oF7EjiOLhKv38AqRsuX6+zo107IsrP5UuXSabPoEOTa4Vwlz69e54kwVntfZYXaXxCA0NVWsbOnQohg378KWGK1eujA0bNsDZ2RlBQUHIzs7GnDlzVOu3b9+OlStXIjIyEm5ubhg0aBC6dPlnntfYsWNhbGyMYcOGoWnTpjh27Jhah6Fp06YYNWoUOnT4tEtca7US0aBBAxw/flytAwEAM2bMQOXKld9pJyIiIiLSNG1eNWnQoEHo27evWltuVYgPMTMze2cagEwmU12i3szMLNcLZFhbW6vmd76dH5Hb7T+F1k/5FP7PF3YBgIODAzsQRERERKTzjI2NYWlpqbYI7UTY29vj9m31y63fuXMHlSq9+fLbSpUqvXd9wYIFUbx4cdy5888FNBISEpCSkvLOEKkP0c+6MRERERFRPuXm5oYXL15g3bp1yM7ORlRUFPbt26eaB9GlSxfs27cPUVFRyM7Oxrp165CYmAg3NzcAgJeXF8LCwvDgwQOkpaVhxowZcHJyQpkyZT45g25/mxIRERER0Udoc2J1XrC2tsaaNWsQEhKCxYsXo3DhwggODkb9+vUBvJlCMHnyZEyZMgXPnj2DnZ0dwsPDUahQIQCAn58fcnJy4O3tjfT0dDg7O2PRokWCMmh1YrWmcGK1fuHEav3CidX6hROrSS/kr8+reeZrnljtuuic1h7rhH9DrT2WJrESQURERER6LZ8VIr4K+nnKh4iIiIiIPhsrEURERESk1/LbnIivASsRREREREQkCCsRRERERKTXWIgQjpUIIiIiIiIShJUIIiIiItJrBixFCMZKBBERERERCcJKBBERERHpNRYihGMlgoiIiIiIBGElgoiIiIj0Gr8nQjhWIoiIiIiISBBWIoiIiIhIrxmwECEYKxFERERERCQIKxFEREREpNc4J0I4ViKIiIiIiEgQViKIiIiISK+xECGcTnQieOD1i5GBfhbQHq7qLnYEUdiP3Ct2BFHcWthe7AiiUCrFTiAODqXQLzlyhdgRxCHl61yX6OenMSIiIiIi+mw6UYkgIiIiIvpcErBKIhQrEUREREREJAgrEURERESk1/hlc8KxEkFERERERIKwEkFEREREeo1XSBOOlQgiIiIiIhKElQgiIiIi0mssRAjHSgQREREREQnCSgQRERER6TUDliIEYyWCiIiIiIgEYSWCiIiIiPQaCxHCsRJBRERERESCsBJBRERERHqN3xMhHCsRREREREQkCCsRRERERKTXWIgQjpUIIiIiIiIShJUIIiIiItJr/J4I4ViJICIiIiIiQdiJICIiIiIiQTiciYiIiIj0GgczCcdKxGdKTUlB0IQANGnoDJcG9eA/bAgSEp6LHUvjbt64gUH9+6JxAyc0b9IIQRMCkJycJHYsjUpKSoJnWzfExkSrtV++dBFOdWqIlEq75HI5+vn0xsTA8WJH+WKFLY1xalIL1LcrotZep5w1bi3weGf7wS3scGZKC1yf0xZbhjaAfQkr1ToDCRDYoSouhLTG73PdsWpAPRQrYKLxfdCUw4cOok7Nqqhf10G1BI4fK3Ysjcntd/tY5BF817kDGjnXQdtWzbF8WSgUCoWIKTXnz3t34TuwH1wa1EWblq4IXxGms/v6b/q233K5HAP79cGUiRMAADOmTUHj+o5qi5NDNQwd3F/kpJTfsBPxmUb5D0NGRgb2H47EkWPHYWBgiKmTJ4odS6NkMhn8BvdHrdoO+O3kGezaux+pKSmYFBQodjSNuRh/Ad97d8ODB/dVbUqlErt37YDvwB+QlZUlYjrtWb4sFPEX4sSO8cXqli+M3aMao1xRC7X27+p/g01+DWAqNVRr79u0PAa3rIgR6+NRc/xhHL3yFNuGNYS1hTEAYHgbezT5tijazT0Jp4lHIctWYHbP2tranTx3/dpVeHh2QFTcRdUyY9ZcsWNpRG6/279fv4bgCQEYOswfp8/HYWlYOPbu2YVNG9aJF1RDMjLSMWRQf9iWKIHIX09hzYbNOHr4IFYuXyZ2NI3Sx/0OX74Ul+IvqH4OnDgFp6MuqJa5CxbDysoKI8eMEzGl+CQSidYWXfFJnYgqVarg22+//eCiT36/fg1Xr1zGtJBZKFCgACwsLDF56jT4jxojdjSNevrkMewrV8EgXz9IjY1RqJA1unTthvgLsWJH04i9eyIQOG4Mhg4fqdY+eWIgdu3cDl+/4SIl067oqPM4FnkULd1aiR3li3Rx+gaLfepg7v4/1NrneddGj4ZlseDgjXdu08GxFNae/BMX/kyGXKHEulN/Iik9Cx4OJQEA3RuURVjkHTxJkSFNloMpO6+h2bfFUKaIuVb2Ka9dv3YV1apVFzuGxr3vd/vx40fo8l13NHFtBgMDA1SoWBHNW7jp5HvcxfgLSEpKRGDwJJiZm6NkyVLoP9AX27f9DKVSKXY8jdG3/Y6NjsJvx46iecvc379TkpMRHDgWY8YFoaJdJS2no/zuk+ZEbNiwQdM58pVrV6+gQkU77NzxC7Zv/RmZmZlo6NIYY8bqdi++XPkKWLZilVpbZOQRfFu1mkiJNKthIxe4e3jCyMgI48b+82HDb+gIFLe1fWd4ky5KTEzElElBWLR4Wb4/G3vyj+eIiHsIuUKJpX3/aZ934AaepsjeGd4EAIYGEmRkydXalEol7IpbwsrUCCWtzXDj8UvVuhevXiM1MxtVShXA/cQMje2LJigUCvzx+3WYmZlh3ZpVkCvkaNy4KfxHjUGBggXFjpen3ve73dKtNVq6tVb9LJPJcPrUCbh7eIoRU6PkcgWkUimMjKSqNomBBImJL/Dq5UudO+Zv6dN+JyUmYtqUYMxbFIotm9bnus3iRfNQtWp1tNXB17hQBrpTINCaT6pEODk5qS2VK1eGubk56tati9q1a8PJyemLQnzp7bUtNTUVt2/dxP2//8K2nRH4ZeduPH/+DEGBut2J+DelUonQnxbi5InjGDchSOw4GmFjUxRGRu/2s4vb2oqQRvsUCgUCx49F7+/7onKVKmLH+WIJr15Drnj3TOPTFNl7b3Po8hP0bVoeVUsVgJGBBL0alUWFYpYwlRrAwvTNayPzP52MzCw5LIzz3zUrkpOSUOXbqmjZqjUi9h3Ehk1b8ffff+nknIj3/W7/W3p6GkYO94OJiSl69fHRTjAtqu1QByYmpli8aD4yMzPx+PEjrF+7GgAge/3+34n8Tl/2W6FQYGJgAHr29oF95dzfvx89fIiD+/fB7z8VOaJPJegvXXp6OiZNmoQDBw7A1NQUu3btQt++fbF27VpUqFDho7efMGFCru0ZGRmqdTNnzhQSSRTGxm/GQweMD4KJiQksLCwxbLg/evX4Dhnp6TC3sPjIPeRvaWlpmBQ0AX/8fh1r129CJfvKYkciDVgdvgImxsbo6d1b7CiiWfHrXZhKDRE+wAkmRgbYF/8IJ28kIDUjG5mv33QeTI3V51GYGRsi7XWOGHG/SBEbG6zdsFn1s5mZGUaOHotePb5DenoaLCwsRUynXX/9eQ+jRw5HkSJFsGrNBp3c9wIFCmDp8nDMmzMTbVq64psyZeDZviOuX7sKK6sCYsfTGH3Z77WrV8LYxATde/Z67zZ7d+9ErdoOqFxFv4akv48uzVXQFkGdiDlz5iAjIwOHDh3Cd999h2+++QbNmjVDSEgIVq9e/dHbP3z4EPHx8WjVqhVMTU1V7fntwFWoaAeFQoHs7GyYmLy5EsvbKzsooXtjKv/twf378PMdgBIlSmLLLztgbV1Y7EikIfv37UHC8+dwqV8XAJCZ+eYs3fHfjuFMVP6fZP0pbAuaYtv5+1hw8CaAN8Obzk1piR1R95GamY0nyZmoXMIKt568AgAUtTKBtYUxbj15+aG7/SrdunkDBw/sx4iRo1XvyVlZWTAwMIBUaixyOu05feokJgSMglfn7zB85OiPVizyq+zsLOTk5CB8zQbV8f5l6xZUqGgHMzMzkdNpjr7s98H9e/Ei4TlcXd6M9JD9//37xPFfceJMDADgt18j0atP3/feB9HHCHp3PH78OPbt24eCBQtCIpFAKpVi/PjxaNKkySfdfv369ViyZAmOHTuGefPmoXLlN2ewf/3113xRgXirfoOGKF36G0wODsS0kJmQvX6NJT8tRLMWLXXyjNVbL1NTMeCH71HPuT6mTguBgQEv7qXL9uw/rPbz28u7TpsxS4w4omjvWArtHUuhx5JzyMpRYKR7ZWTlKHDs2jMAwC/R9zGstT0u/Z2CpLTXmNy5Os7ffoG/X+Sv+RAAULBgIWzdshkFCxZE7+/7IuH5cyycPxftO3ZSVV913ZXLlzBqhB+CJk5BR68uYsfRKKUS8B3UD6NGB6CjVxf88ft1rApfjkG+Q8WOplH6st879xxU+/nt5V2nTHvzWSslJRl/3ruLOo51tZ7ta5XPzmd/FQR1IhQKheqPydurGPy77WMMDAwwYsQIODk5YciQIfjhhx/g7e0tMLL4pFIpVq/fiHlzZsHTvTVeZ72Gq2tzBOjo3IC3dkfswpMnj3H0yCFEHlH/gBkVd1GkVESaE/7bXZS0NsNvwc0hNTRA7N1E9Ag9h9c5byqPPx26BamhAXaMaAQLUyOcv/0CQ9bkzypNcVtbhIatwOJFCxC+IgzGJiZo09YDI0fr3pyI91kdvhw5OTmYPTMEs2eGqNrrODpi6fJVH7hl/mNsbIxFi5dh3pyZmDt7BgoXLoK+PwxA5y7fiR1No/R1v//r8aNHAICixYqLnITyM4lSwDXNxowZA6lUikmTJqFp06aIiYnBjBkz8OLFCyxYsEDQAycmJiIgIAAmJiaIiYlBXNzn/+GV5b/hx/QFdPAqfJ9EX8+S2I/cK3YEUdxa2F7sCKLQ199v0i85ct39crsPsTL9ekcw9NlyRWuPtaFnTa09liYJOpoTJkzA3bt3Ua9ePbx69QoODg6IjY3FuHHCr0pUpEgRrFq1CjVq1EDRokUF356IiIiIiMQhaDhTkSJFsG3bNly9ehWPHj2Cra0tatasCUNDw4/fOBcSiQS+vr7w9fX9rNsTEREREX0pfk+EcIIvO5Geno4HDx7g2bNnMDAwQHZ29md3IoiIiIiIKP8R1Im4evUq+vfvD1NTU9ja2uLRo0eYPXs2Vq1a9UnfE0FERERE9LXJb1838DUQNCdi5syZ6Nu3L06ePIlt27bh9OnT6NChA3788UdN5SMiIiIioq+MoErEnTt3sHHjRtXPEokEQ4YMQYMGDfI8GBERERGRNrAOIZygSkTlypVx6dIltbY//vgD33zzTV5mIiIiIiKir9gnVSJCQ0MBACVKlMCgQYPQpUsXlC5dGs+fP8eOHTvQqlUrjYYkIiIiItIUA86JEOyTOhHR0dGq/3/77be4fv06rl+/DgCoWLEi7t27p5l0RERERET01fmkTsS/50EQEREREZF+E/w9EVFRUXj27BmUSiUAIDs7Gzdv3kRwcHCehyMiIiIi0rSvdTTT9evXMWPGDNy8eROmpqZo06YNAgICYGxsjMuXL2P69Om4c+cOrK2t4evri65du6puGxERgWXLliEhIQEVKlTAxIkT4eDgkGfZBHUipk+fjq1bt8LCwgIAIJfLkZ6ejsaNG+dZICIiIiIifadQKDBo0CAMHDgQGzduxPPnz+Hj4wNra2v06tULAwcOxPDhw9GtWzfExsbCz88PlStXRs2aNREdHY1p06YhPDwcNWvWxObNm+Hr64vjx4/DzMwsT/IJujrToUOHsGnTJixatAjNmzdHbGwsvv/+e9ja2uZJGCIiIiIibZNIJFpbPlVqaioSEhKgUChUI4AMDAxgZmaGo0ePolChQvD29oaRkREaNGgAT09PbN68GQCwfft2eHh4wNHREVKpVNX5OHjwYJ49Z4I6EZmZmahduzbs7Oxw/fp1SCQSDB06FCdOnMizQEREREREuiorKwtpaWlqS1ZW1jvbWVtbw8fHB7Nnz0aNGjXQtGlTlCtXDj4+Prh9+zbs7e3Vtrezs8ONGzcAvPlutw+tzwuCOhG2trZITExE0aJF8fTpU2RnZ8PU1BRpaWl5FoiIiIiISJskEu0tK1asgKOjo9qyYsWKdzIpFAqYmppi4sSJuHTpEvbv34+7d+9i8eLFSE9Pf2dYkqmpKTIyMgDgo+vzgqA5EU2bNoWPjw/Wr1+PevXqITAwECYmJihXrlyeBSIiIiIi0lWDBg1C37591dqMjY3f2S4yMhJHjhzB4cOHAQCVKlWCn58fQkJC4OnpiVevXqltL5PJVPOWzczMIJPJ3llvbW2dZ/shqBMxatQoFClSBFKpFJMmTUJwcDBevXqFadOm5VkgIiIiIiJt0uaXzRkbG+faafivJ0+evDPMycjICFKpFPb29jh79qzaujt37qBSpUoA3nQ4bt++/c76Jk2afGH6fwgaziSVStG/f39YWVmhePHiCA8Px+bNm2Fubp5ngYiIiIiI9J2LiwsSEhKwfPlyyOVyPHjwAGFhYfD09ISbmxtevHiBdevWITs7G1FRUdi3bx86d+4MAOjSpQv27duHqKgoZGdnY926dUhMTISbm1ue5ZMo3073/kzPnj2Dq6sr/vjjj7zKJJgsR7SHJhF82Ss2//par2GtafYj94odQRS3FrYXO4Io9PX3m/RLjlwhdgRRWJkKOnetVUN2/a61x1rmVfWTtz137hwWLVqEe/fuwcrKCu3bt4efnx+MjY1x9epVhISE4NatWyhcuDCGDBkCLy8v1W337NmDsLAwPHv2DHZ2dggODkatWrXybD8Ef9lcbr6wH0JERERERP/RsGFDNGzYMNd1NWrUwNatW9972w4dOqBDhw6aipY3nQgh17wlIiIiIvqa8LOscF9vXYmIiIiIiL5Kn1SJiI2Nfe+6pKSkPAvzuTiaivRBtp6Oob25QD/nBjhOPip2BFHETs67SX/5iYGBfp4FzZHr5x9wQ0P9PN5fM55VF+6TOhG9e/f+4HqWgIiIiIiI9McndSLy8iuyiYiIiIi+JjwhLhyrN0REREREJEieXJ2JiIiIiCi/0tNpSV+ElQgiIiIiIhKEnQgiIiIiIhJEcCciKysLkZGRWLduHTIzMznpmoiIiIjyNQOJ9hZdIWhOxP379/HDDz8gOzsbL1++RNOmTdG5c2eEhoaiWbNmmspIRERERERfEUGViJCQEHh5eeHEiRMwMjJC+fLlMX36dCxevFhT+YiIiIiINEoikWht0RWCOhGXLl1C//791Z6EDh064MGDBxoJR0REREREXx9BnQgrKyu8ePFCrS0hIQEFCxbM01BERERERNrCORHCCepEeHp6YujQoTh79iwUCgWuXLmCMWPGwMPDQ1P5iIiIiIjoKyNoYvWQIUMgk8kwdOhQZGZmonfv3ujSpQuGDh2qqXxERERERBqlQ1MVtEZQJ0IqlWLcuHEYN24ckpKSYG1trVMTRIiIiIiI6OMEdSJ279793nUdO3b8wihERERERNpnwJPiggnqRPz3Uq6pqanIzMyEo6MjOxFERERERHpCUCfit99+U/tZqVQiPDwcKSkpeZmJiIiIiEhrBF1piAB84XMmkUjQr18/7NmzJ6/yEBERERHRV05QJSI3f/75JydXExEREVG+xY+ywgnqRPTu3Vutw5CdnY2bN2+iffv2eR6MiIiIiIi+ToI6Ec7Ozmo/GxgYwMfHBy1btszTUERERERE2sKrMwknaE5EcnIyfHx8MHToUAwdOhRDhgxB69atYWhoqKl8X6WkpCR4tnVDbEy0WvvlSxfhVKeGSKk0T1/3GwD+vHcXvgP7waVBXbRp6YrwFWFQKBRix9IYuVyOgT/0wZTgCaq2XyOPomfXTmjaoC4827TAyrClOvcc5PYaPxZ5BN917oBGznXQtlVzLF8Wmi/329pcikOjXFCvvLVae61vCiJ+Sotcb/N9o7JY26+uWptEAvg2q4BjY5sgZlJz/DzYGbW+Kaix3Jpw8+YNDB7wA5o2ckZLVxcEB45DcnIyAODqlcvo3fM7NHSqA482LRCxa4fIaTUvKSkJ7dq8+96uK2Kio9Cn53do0sARrZq5YM7MaZDJZACAGdOmoL5jDbg411Etu3ZsEzlx3kpKSkL7tq0Q96/je+vmTQzq54NGTnXQokkjzJszEzk5OSKmpPxIUCdi3759MDMz01SWfOFi/AV8790NDx7cV7UplUrs3rUDvgN/QFZWlojpNEdf9xsAMjLSMWRQf9iWKIHIX09hzYbNOHr4IFYuXyZ2NI0JX74Ul+IvqH7+4/frmBQ0Dr5Dh+P42RgsXrYS+/dEYMvG9SKmzFu5vcZ/v34NwRMCMHSYP06fj8PSsHDs3bMLmzasEy/oZ3AoUwhbBjujTBFztfZOjiUR3tcRJlL1E0FmUkOMbWuPAPfK79zX4GYV4F6rBPqtiUP9ab/h2PVnWNbHAVLD/HEWTyaTYajvANSqXRvHTpzGjt37kJqSgikTJ+BlaiqGDRmIdp4dcOpcDCZPDcH8OTNx7eoVsWNrzMX4C+jTU/11r0uSk5LgP3QQunTrjhNnY7H5l12Ii43ButUrAQC/X7+KoEk/4kx0vGrx6tJN5NR551J8PHy8u6sd3+TkZAzq7wOn+g1w4mw0Nv68DadPntCp9/PPIZFob9EVgjoRnTt3xtSpU3Hp0iU8evQIjx8/Vi36YO+eCASOG4Ohw0eqtU+eGIhdO7fD12+4SMk0S1/3+62L8ReQlJSIwOBJMDM3R8mSpdB/oC+2b/sZSqVS7Hh5LjY6Cr8dO4rmLVup2h4/eoTOXbuhcdNmMDAwQPkKFeHaoiXiL8SJmDTvvO81/vjxI3T5rjuauL7Z7woVK6J5CzfEX4gVKalwHRxKYs53NfBT5G219ule1dClbmks/fXuO7fZNawBilqZYGv0A7V2AwnQu2FZzNj3B/5OzIBCCaw98xcGrovX6D7kpadPHsPevgoGDvaDVGqMQoWs0blrN8RfiMOxY0dRsFAhdOvhDSMjIzg510dbD09s27pZ7NgasXd3BCYEjMHQESM/vnE+ZV24MCJPnEX7Dl6QSCRITUlBVlYWrAsXRlZWFu7cvoWq1aqLHVMj9u6JwIRxY+A33F+tfd+eCJQtWw79BgyCVCpFyVKlERa+Bm5t2ooTlPItQXMi1q5dCwD45ZdfVBOslUolJBIJ/vjjj88KkJGRAalUCqlU+lm316aGjVzg7uEJIyMjjBv7z5uu39ARKG5rq7OlYH3d77fkcgWkUimMjP55jUoMJEhMfIFXL1+iQMH8NZTjQ5ISEzFtcjDm/RSqdlaqhVsrtHD7p1Mhk8lw5tRJtPVoJ0bMPPe+13hLt9Zo6dZa9bNMJsPpUyfg7uEpRszPcvb2C+y//ARyhRLzu//TvuTYHTx7+fqd4U0A4LMqFs9evsaQ5hVRoaiFqr2cjQUKmklhZSbFL0Pqo2QhU/zx5BVmH7iJbHn+6FCXK18BS5eHq7UdizyCb6tWw707d2BXyV5tXYUKFbE7Yqc2I2pNw0YucG/3/9f9GN3tSFhYWAIA3N1c8fz5MzjUqYv2Hbxw6+YN5OTkYPnSxbh0MR6WVpbo0KkL+vj0g4FB/v/WgH+/r40fO0rVfv3qVdhVqoTpUyfjxG+/wszMDB06dcYPAwaKmFZ8BjpUIdCWT/otuXDhzbCGX3/9VbUcO3YMx44dU/3/U4wbN071/5cvX2Lw4MGoW7cuHBwcMGnSpK9+SIyNTVEYGb3b7ypuaytCGu3R1/1+q7ZDHZiYmGLxovnIzMzE48ePsH7tagCA7LVM5HR5R6FQYGJgAHr28YF95Srv3S49PR1j/IfC1NQUPXv7aC+gBr3vNf5v6elpGDncDyYmpujVx0c7wfLAi7QsyBXvfsB/9vL1e2/zvnUFzd50pHs1KIMRWy6hxZxT+P3RS6zsWweWJl98xXCtUyqVWLp4EU6dOI6x4wKRnpEOMzP1IV+mZmbIzMgQKaFm2RT9+Otel0TsP4LDx07CwNAAAaNHIC3tFRzrOqG7d28cjDyBaTPmYuuWjdi0fq3YUfPE+97XUlNTsSciAtVr1MShY8cxb9ES7Ny+TWf2m7TnkzoRAwYMAACUKlXqvcuniIyMVP1/3rx5yMjIwLZt27Bu3TrcunUL8+bN+4xdINKsAgUKYOnycFy9chltWroiYLQ/PNt3BABYWRUQN1weWrtqJYyNTdC9Z6/3bvPXn3+ib6/ukOfIsXz1OlhYWLx3W13y15/30Me7O+TyHKxas0F1ZlPfZMnfTChf9ttdPEmR4XWOAosib8PSxAgOZQuJG06gtLQ0jBk1HAcO7MXqdRtRyb4yzMzMIJNlqm0ny8yEuZ68znWdqakpihYrjuH+Y3Du7GlUrVYdK1avh2NdJ0ilUlSvURM9vb/H0SMHxY6qUcbGUlSvUQMdvTpDKpWicpUq6N6zF44eOSx2NMpnPqkTkVfjvv99P6dOncKcOXNQo0YN1K1bFwsWLMCBAwfy5HGI8lJ2dhZycnIQvmYDTp6Nxqaft/9/fLydTl1o4OD+vYiPi4FrIye4NnLC4YMHcPjgAbg2cgIAnDl9Et97f4eGjRpjyfJwFCigO8O4PuT0qZPo1aMrGjVqjGUrVuvU8DWh/nqRjmy5AsZG//zpkACQSCT5arLggwf30atHF6SnpWPz1p2oZP9mArmdXSXcu3NHbdt79+7Czq6SGDEpD1y+FA+v9m2Rnf3PSIfsrCxIpVJEnT+Hndu3qm2flZ0FExNTbcfUqgoV7d4Z+SFXyHVyjp8QBhKJ1hZd8UmdiLz6Rup/34+BgQGsrf8Zi1u8eHHVJdeIviZKJeA7qB9279oBpVKJ369fw6rw5fDu/b3Y0fLUzr0HcfJ8HE6cjcGJszFo4+6BNu4eOHE2BlcvX8JY/2EYNXY8/McE6M0QiCuXL2HUCD+MCZiAUWPH6c1+v0/6azkOXn6KgLaVUbKQKaSGEoxsbY+XmdmIvpskdrxP8jI1FQP7+aBWLQcsW7FK7e9Q85ZuePHiBTZvXI/s7GzExkTh0IF96NDJS8TE9CUq2VeGTCbDkkXzkZ2dhSePH2Hh/Dno0KkLjIyMMH/uLMREnYdSqcSVyxfx8+YN6NxVd67OlJsOnTrjzu1bWLdmFeRyOW7fuoltP2+Ghye/OJiE+aS/iJmZmWjRIvfriL/166+/fvR+Xr9+jcDAQFSvXh2VKlXCgQMH4OX15s153bp1qFSJZ3vo62NsbIxFi5dh3pyZmDt7BgoXLoK+PwxA5y7fiR1Na9asWomcnBzMmzUD82bNULU71HHE4rCVIibTrNXhy5GTk4PZM0Mwe2aIqr2OoyOWLl8lYjLxTN59HX4tKmJtv3qwtpDi+qOXGLjuAl7n5I/vztizexeePnmMo0cPI/LoEbV152LiERa+GnNnzUDY0sWwti6MgPFBqOdUX6S09KXMzS0QGhaOeXNmwM3VBZZWlnD3aI/+g4bA2NgYo8eOx6yQqXj27BmK2NhgkO8wuLfT7Q/T5StUwKp1G7Fw/lysWbUSpqam6NqtB3p49xY7mqh0qECgNRLlJ9SvatasialTp35wm06dOn30wQ4ePIirV6/i2rVruH79OqpVq4aNGzdi/vz52LRpE8LDw1G3bt2P3s9/ZWYLvglRvpOTD7/gLC8Y6cBVUj5H3SlHxY4gitjJbmJHEIWBnl4aJiefXNUrr+np2xrMpV/v63zasTsf3yiPTGxpp7XH0qRPqkQYGRl9UifhY9zd3eHu7g7gzfyIpKQ35e927dqhV69eKF68+Bc/BhERERGREHraj/8in9SJ0MRkG4lEgiJFigAAKld+91tRiYiIiIjo6/RJnYj27XV7fCARERER6S8JWIoQ6pNG5X1sPgQREREREekP/b5eIRERERHpPc6JEE5Prw9ARERERESfi5UIIiIiItJrrEQIx0oEEREREREJwkoEEREREek1Cb+yWjBWIoiIiIiISBBWIoiIiIhIr3FOhHCsRBARERERkSCsRBARERGRXuOUCOFYiSAiIiIiIkHYiSAiIiIiIkE4nImIiIiI9JoBxzMJxkoEEREREREJwkoEEREREek1XuJVOFYiiIiIiIhIEFYiiIiIiEivcUqEcKxEEBERERGRIKxEEBEREZFeMwBLEULpRCeCJSj9olAqxY4gCqmhfhYO9fV4x052EzuCKGz7bBQ7giieb+ojdgRRGBnyDzhRfqUTnQgiIiIios/FE9LC6eepTSIiIiIi+mysRBARERGRXuP3RAjHSgQRERER0VcoJSUFAQEBcHZ2Rr169TBkyBA8f/4cAHD58mV07doVDg4OaN68ObZv365224iICLi5uaF27drw8vLCxYsX8zQbOxFEREREpNcMJBKtLUIMGzYMGRkZiIyMxPHjx2FoaIiJEyciNTUVAwcORMeOHREbG4uQkBDMnDkTV65cAQBER0dj2rRpmDVrFmJjY9G+fXv4+voiMzMzz54zDmciIiIiItKSrKwsZGVlqbUZGxvD2NhYre3atWu4fPkyzp07B0tLSwDAtGnTkJCQgKNHj6JQoULw9vYGADRo0ACenp7YvHkzatasie3bt8PDwwOOjo4AAB8fH2zbtg0HDx5E586d82Q/WIkgIiIiIr0mkWhvWbFiBRwdHdWWFStWvJPpypUrsLOzwy+//AI3Nze4uLhg9uzZKFq0KG7fvg17e3u17e3s7HDjxg0AwJ07dz64Pi+wEkFEREREpCWDBg1C37591dr+W4UAgNTUVNy8eRPVq1dHREQEZDIZ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oY4j5syagfT0NDx8+AArly9DJ68uYkejfEyrlYimTZsiMDAQM2fORI8ePTBnzhwEBQUhKysLgYGBcHZ21maczyaVSrF6/UbMmzMLnu6t8TrrNVxdmyNgQpDY0UjDOnXuApksE3NmhuBFQgJsS5RE4MQpaOLaTOxopAHlK1TAqnUbsXD+XKxZtRKmpqbo2q0HeujAkL49u3fh6ZPHOHr0MCKPHlFbdy4mXqRUmnXpzyT0XngSE7vVxpKBDfDgRTrGrY9FRNTfAIBxnWvBwsQIh6e0Vrvd/N1XMX/3NTEia4y5hQWWrViFObNnoFnTRrCytIJHO08M9PUTO5pG6fPf7/kLF2NmyI9wb9UCEgMDeLbviIGDh4gd66uhS3MVtEWi1GJdPjU1FUOHDsXVq1dRsWJF3Lz55uyPUqlE6dKlsWnTJhQtWlTw/cr4XSl6RaEjQ0mEMtDTNzh9Pd46PLLig2z7bBQ7giieb+ojdgQijTP9iq/T8culx1p7rO9ql9TaY2mSVg9nwYIFsXHjRly7dg1Xr15FamoqjI2NUbFiRTRq1EgvrgJDRERERJTfifKpvXr16qhevboYD01EREREpEY/a/1fhpPRiYiIiIhIEI4fIiIiIiK9xonVwrESQUREREREgrASQURERER6jWfVheNzRkREREREgrASQURERER6jXMihGMlgoiIiIiIBGElgoiIiIj0GusQwrESQUREREREgrASQURERER6jVMihGMlgoiIiIiIBGElgoiIiIj0mgFnRQjGSgQREREREQnCSgQRERER6TXOiRCOlQgiIiIiIhKElQgiIiIi0msSzokQjJUIIiIiIiIShJUIIiIiItJrnBMhHCsRREREREQkCDsRREREREQkCIczUf6jFDuASFhq1SsGBvp5wJ9v6iN2BFFYey4UO4IokveNFDuCKHLkevqHzOjrfV/jl80Jx0oEEREREREJwkoEEREREek1TqwWjpUIIiIiIiIShJUIIiIiItJrrEQIx0oEEREREREJwkoEEREREek1Ca/OJBgrEUREREREJAgrEURERESk1/T0q3m+CCsRREREREQkCCsRRERERKTXOCdCOFYiiIiIiIhIEFYiiIiIiEiv8XsihGMlgoiIiIiIBGElgoiIiIj0GudECMdKBBERERERCcJKBBERERHpNX5PhHCsRBARERERkSDs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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 8,
   "source": [
    "# 使用热度图展示混淆矩阵，体现每个类别的识别效果\n",
    "plt.figure(figsize=(10,7))\n",
    "sns.heatmap(conf_matrix, annot=True, fmt='d', cmap='Blues')\n",
    "plt.title(\"Logistic Regression - Confusion Matrix\")\n",
    "plt.xlabel(\"Predicted Label\")\n",
    "plt.ylabel(\"True Label\")\n",
    "plt.show()"
   ],
   "id": "af095bf3567207d3"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "",
   "id": "eff7ffd184210f56"
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
